using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace KFGame.Modes
{
    [System.Serializable]
    public class KFConfigMode : KFMode
    {

        public static KFConfigMode getModes()
        {
            if (!editObject)  
            editObject = new GameObject("KF_Config_edit");
            var mode = editObject.AddComponent<KFConfigMode>();
            return mode;
        }

        public bool KeyboardLisent = true;
        public bool debug = true;

        public string filename = "kfconfig.ini";


        /// <summary>
        /// 所有事件
        /// </summary>
        /// <typeparam name="KFKeyEventMode"></typeparam>
        /// <returns></returns>
        [SerializeField]
        [Tooltip("键盘模拟记录集")]
        public List<KFKeyEventMode> eventModes = new List<KFKeyEventMode>();

        public override string FileName()
        {
            return filename;
        }

        public override void save()
        {
            string iniPath = Application.streamingAssetsPath + "/KFConfig/" + filename;
            INIParser iNIParser = new INIParser();
            iNIParser.Open(iniPath);
            iNIParser.clean();



            iNIParser.WriteValue("KFINFO", "KeyboardLisent", KeyboardLisent);
            iNIParser.WriteValue("KFINFO", "debug", debug);





            iNIParser.save();

        }

        public override void LoadDatas()
        {
            string iniPath = Application.streamingAssetsPath + "/KFConfig/" + filename;
            INIParser iNIParser = new INIParser();
            iNIParser.Open(iniPath);


            KeyboardLisent = iNIParser.ReadValue("KFINFO", "KeyboardLisent", true);
            debug = iNIParser.ReadValue("KFINFO", "debug", true);


        }
    }
}